package sg.edu.nus.iss.billing.model.calculation;

import sg.edu.nus.iss.billing.model.bill.Bill;
import sg.edu.nus.iss.billing.model.charge.IChargable;

/**
 * 
 * @author Thurein, ZiFeng, YinNi
 * There could be more than one charge method for a specific type of charge.  
 * E.g. Subscription fee could be charge monthly, daily or yearly.
 * Different implementation should be able to plug in to a charge (IChargable).
 *
 */
public interface IChargeMethod {
	double calculate(IChargable calculatingFee, Bill chargingBill);	
}
